package com.example.tool.source;

import android.os.Handler;
import android.widget.TextView;

import com.example.tool.R;
import com.example.tool.activtiy.base.BaseActivity;
import com.example.tool.mvp.CommonPresent;

import butterknife.BindView;

/**
 * 描述:handler源码分析
 *
 * @author: liangkun
 * @date: 2019/11/29 10:43
 * 使用Handler的原因：将工作线程需操作UI的消息 传递 到主线程，使得主线程可根据工作线程的需求 更新UI，从而避免线程操作不安全的问题
 * 用到这些Handler、Message、Message Queue、Looper
 */
public class HandlerActivity extends BaseActivity<CommonPresent> {
    @BindView(R.id.tv_title)
    protected TextView tvTitle;

    @Override
    protected int getLayoutId() {
        return R.layout.activity_public;
    }

    @Override
    protected void initView() {
        tvTitle.setText("handler源码");
        /**
         * 当创建Handler对象时，则通过 构造方法 自动关联当前线程的Looper对象 & 对应的消息队列对象（MessageQueue）
         * ，从而 自动绑定了 实现创建Handler对象操作的线程
         */
        Handler handler = new Handler();
    }

    @Override
    protected void initData() {

    }

    @Override
    protected void initEvent() {

    }

    @Override
    protected CommonPresent createPresenter() {
        return null;
    }


}
